Many software applications (e.g., e-mail) are designed to operate on both a client device and a server system, or on a client device with support from a server system. These applications enable a user to freely create, receive, transmit, and modify data regardless of whether the user is operating on the client device or on the server. Synchronization of data between the client and the server allows consistency to be maintained between the application data residing on the client and the server. Synchronization is important as, for reasons of efficiency, a client device generally operates mainly with locally-stored data. One common implementation is to store a complete set of the data associated with a client-server application on the server and maintain a subset of data relevant to or commonly used by the user on the client device. When synchronizing server data with client device, many methods of synchronization require priming of the complete local cache before allowing the use of the data that have been synchronized. In fact, synchronization is typically an all or none process. If the local cache is not completely primed, none of the data can be used by the client.
The client is generally constraint by memory and thus contains a subset of the application data that resides on the server. Server application data for synchronization with the client should be selected such that information most relevant to the user of the client is synchronized. Many traditional mechanisms of synchronization lack the ability to select and prioritize information that is relevant to the user for synchronization. For example, data in synchronization systems utilizing folders for organizing information data is limited. These data may only be categorized in association with one folder during data synchronization. Furthermore, systems where application data are not categorized into folders make selection of data for synchronization even more difficult. A more flexible system to overcome shortcomings of existing synchronization mechanisms is desirable.